64 research outputs found
Personal recommendations in requirements engineering : the OpenReq approach
[Context & motivation] Requirements Engineering (RE) is considered as one of the most critical phases in software development but still many challenges remain open. [Problem] There is a growing trend of applying recommender systems to solve open RE challenges like requirements and stakeholder discovery; however, the existent proposals focus on specific RE tasks and do not give a general coverage for the RE process. [Principal ideas/results] In this research preview, we present the OpenReq approach to the development of intelligent recommendation and decision technologies that support different phases of RE in software projects. Specifically, we present the OpenReq part for personal recommendations for stakeholders. [Contribution] OpenReq aim is to improve and speed up RE processes, especially in large and distributed systemsPeer ReviewedPostprint (author's final draft
On the Presence of Green and Sustainable Software Engineering in Higher Education Curricula
Nowadays, software is pervasive in our everyday lives. Its sustainability and
environmental impact have become major factors to be considered in the
development of software systems. Millennials-the newer generation of university
students-are particularly keen to learn about and contribute to a more
sustainable and green society. The need for training on green and sustainable
topics in software engineering has been reflected in a number of recent
studies. The goal of this paper is to get a first understanding of what is the
current state of teaching sustainability in the software engineering community,
what are the motivations behind the current state of teaching, and what can be
done to improve it. To this end, we report the findings from a targeted survey
of 33 academics on the presence of green and sustainable software engineering
in higher education. The major findings from the collected data suggest that
sustainability is under-represented in the curricula, while the current focus
of teaching is on energy efficiency delivered through a fact-based approach.
The reasons vary from lack of awareness, teaching material and suitable
technologies, to the high effort required to teach sustainability. Finally, we
provide recommendations for educators willing to teach sustainability in
software engineering that can help to suit millennial students needs.Comment: The paper will be presented at the 1st International Workshop on
Software Engineering Curricula for Millennials (SECM2017
MLSMM: Machine Learning Security Maturity Model
Assessing the maturity of security practices during the development of
Machine Learning (ML) based software components has not gotten as much
attention as traditional software development. In this Blue Sky idea paper, we
propose an initial Machine Learning Security Maturity Model (MLSMM) which
organizes security practices along the ML-development lifecycle and, for each,
establishes three levels of maturity. We envision MLSMM as a step towards
closer collaboration between industry and academia.Comment: Accepted at AdvML-Frontiers'23 as a Blue Sky Ide
Why Research on Test-Driven Development is Inconclusive?
[Background] Recent investigations into the effects of Test-Driven
Development (TDD) have been contradictory and inconclusive. This hinders
development teams to use research results as the basis for deciding whether and
how to apply TDD. [Aim] To support researchers when designing a new study and
to increase the applicability of TDD research in the decision-making process in
the industrial context, we aim at identifying the reasons behind the
inconclusive research results in TDD. [Method] We studied the state of the art
in TDD research published in top venues in the past decade, and analyzed the
way these studies were set up. [Results] We identified five categories of
factors that directly impact the outcome of studies on TDD. [Conclusions] This
work can help researchers to conduct more reliable studies, and inform
practitioners of risks they need to consider when consulting research on TDD.Comment: ESEM '20: ACM / IEEE International Symposium on Empirical Software
Engineering and Measurement (ESEM), October 8--9, 2020, Bari, Ital
Recognizing Developers' Emotions while Programming
Developers experience a wide range of emotions during programming tasks,
which may have an impact on job performance. In this paper, we present an
empirical study aimed at (i) investigating the link between emotion and
progress, (ii) understanding the triggers for developers' emotions and the
strategies to deal with negative ones, (iii) identifying the minimal set of
non-invasive biometric sensors for emotion recognition during programming task.
Results confirm previous findings about the relation between emotions and
perceived productivity. Furthermore, we show that developers' emotions can be
reliably recognized using only a wristband capturing the electrodermal activity
and heart-related metrics.Comment: Accepted for publication at ICSE2020 Technical Trac
The slowly variable star FY Lacertae
Photometric observations and analysis of FY Lac were performed in order to
determine the variability characteristics, using measurements taken at Loiano
site of Bologna Astronomical Observatory and AAVSO data. The star shows a Long
Term variability with a preliminary period of about 274 +/- 28 days and
photometric characteristics compatible with a red M5 III giant star, with a
temperature of 3420 K degrees.Comment: 9 page
A Replication Study on Code Comprehension and Expertise using Lightweight Biometric Sensors
Code comprehension has been recently investigated from physiological and
cognitive perspectives through the use of medical imaging. Floyd et al (i.e.,
the original study) used fMRI to classify the type of comprehension tasks
performed by developers and relate such results to their expertise. We
replicate the original study using lightweight biometrics sensors which
participants (28 undergrads in computer science) wore when performing
comprehension tasks on source code and natural language prose. We developed
machine learning models to automatically identify what kind of tasks developers
are working on leveraging their brain-, heart-, and skin-related signals. The
best improvement over the original study performance is achieved using solely
the heart signal obtained through a single device (BAC 87% vs. 79.1%).
Differently from the original study, we were not able to observe a correlation
between the participants' expertise and the classifier performance (tau = 0.16,
p = 0.31). Our findings show that lightweight biometric sensors can be used to
accurately recognize comprehension tasks opening interesting scenarios for
research and practice.Comment: Author version submitted to ICPC2019 (Replication track
What Makes Agile Test Artifacts Useful? An Activity-Based Quality Model from a Practitioners' Perspective
Background: The artifacts used in Agile software testing and the reasons why
these artifacts are used are fairly well-understood. However, empirical
research on how Agile test artifacts are eventually designed in practice and
which quality factors make them useful for software testing remains sparse.
Aims: Our objective is two-fold. First, we identify current challenges in using
test artifacts to understand why certain quality factors are considered good or
bad. Second, we build an Activity-Based Artifact Quality Model that describes
what Agile test artifacts should look like. Method: We conduct an industrial
survey with 18 practitioners from 12 companies operating in seven different
domains. Results: Our analysis reveals nine challenges and 16 factors
describing the quality of six test artifacts from the perspective of Agile
testers. Interestingly, we observed mostly challenges regarding language and
traceability, which are well-known to occur in non-Agile projects. Conclusions:
Although Agile software testing is becoming the norm, we still have little
confidence about general do's and don'ts going beyond conventional wisdom. This
study is the first to distill a list of quality factors deemed important to
what can be considered as useful test artifacts
- …